// 存储请求函数模块
import request from '@/utils/request'

// 函数 参数  返回值

// 登录接口
export function loginApi (data) {
  return request({
    url: '/v1_0/authorizations',
    method: 'POST',
    data
  })
}

// 获取频道
export function getChannels () {
  return request({
    url: '/v1_0/channels'
  })
}

// 获取文章列表
export function getArticlesApi ({ channelId, timestamp }) {
  return request({
    url: '/v1_0/articles',
    params: {
      channel_id: channelId,
      timestamp
    }
  })
}

// 文章 - 详情
export const articleDetailAPI = (id) => {
  return request({
    // :id是后台规定的参数名
    // 前端要在对应路径位置传值(不要写:)
    url: `/v1_0/articles/${id}`
  })
}

// 文章 - 关注作者
export const followedUserAPI = ({ target }) => {
  return request({
    url: '/v1_0/user/followings',
    method: 'POST',
    data: {
      target
    }
  })
}
// 文章 - 取消关注作者
export const unFollowedUserAPI = ({ uid }) => {
  return request({
    // 这uid只是个变量名, 把值拼接在url发给后台(无需指定参数名)
    url: `/v1_0/user/followings/${uid}`,
    method: 'DELETE'
  })
}

// 文章 - 点赞
export const giveLikeApi = ({ target }) => {
  return request({
    url: '/v1_0/article/likings',
    method: 'POST',
    data: {
      target
    }
  })
}
// 文章 - 取消赞
export const unGiveLikeApi = ({ target }) => {
  return request({
    url: `/v1_0/article/likings/${target}`,
    method: 'DELETE'
  })
}

// 获取-用户基本资料
export const getUserInfoApi = () => {
  return request({
    url: '/v1_0/user'
  })
}

// 获取-用户额个人简介
export const getUserApi = () => {
  return request({
    url: '/v1_0/user/profile'
  })
}

// 更改头像
export const getUserImgApi = (data) => {
  return request({
    url: '/v1_0/user/photo',
    method: 'PATCH',
    data
  })
}

// 用户 - 更新资料
export const updateProfileAPI = (data) => {
  return request({
    url: '/v1_0/user/profile',
    method: 'PATCH',
    data
  })
}

/**
 * 获取-搜索联想建议
 */
export const suggestionApi = (params) => {
  return request({
    url: '/v1_0/suggestion',
    params
  })
}

/**
 * 获取-- 搜索结果
 */
export const searchApi = (params) => {
  return request({
    url: '/v1_0/search',
    params
  })
}
